package cn.edu.scau.cmi.ema.dao;

import cn.edu.scau.cmi.ema.base.CmiPagination;
import cn.edu.scau.cmi.ema.domain.Crawler;
import org.springframework.dao.DataAccessException;

import java.util.Set;

public interface CrawlerDAO extends JpaDao<Crawler> {

	public Crawler findCrawlerById(Integer id) throws DataAccessException;

	public Crawler findCrawlerById(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlerByName(String name) throws DataAccessException;

	public Set<Crawler> findCrawlerByName(String name, int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlerByNameContaining(String name_1) throws DataAccessException;

	public Set<Crawler> findCrawlerByNameContaining(String name_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Crawler> findCrawlerByUrl(String url) throws DataAccessException;

	public Set<Crawler> findCrawlerByUrl(String url, int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlerByUrlContaining(String url_1) throws DataAccessException;

	public Set<Crawler> findCrawlerByUrlContaining(String url_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Crawler> findCrawlerBySnapshot(String snapshot) throws DataAccessException;

	public Set<Crawler> findCrawlerBySnapshot(String snapshot, int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlerBySnapshotContaining(String snapshot_1) throws DataAccessException;

	public Set<Crawler> findCrawlerBySnapshotContaining(String snapshot_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Crawler> findCrawlerByDescription(String description) throws DataAccessException;

	public Set<Crawler> findCrawlerByDescription(String description, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Crawler> findCrawlerByDescriptionContaining(String description_1) throws DataAccessException;

	public Set<Crawler> findCrawlerByDescriptionContaining(String description_1, int startResult, int maxRows)
			throws DataAccessException;

	public Crawler findCrawlerByPrimaryKey(Integer id) throws DataAccessException;

	public Crawler findCrawlerByPrimaryKey(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlersByIds(Set<Integer> ids) throws DataAccessException;

	public Set<Crawler> findAllCrawlers() throws DataAccessException;

	public Set<Crawler> findAllCrawlers(int startResult, int maxRows) throws DataAccessException;

	public Set<Crawler> findCrawlerByCompositeProperities(String sql, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Crawler> findCrawlersByDetachedCriteria(CmiPagination page) throws DataAccessException;

	public Crawler findCrawlerByPhysicalPrimaryKey(String name) throws DataAccessException;

	public Crawler findCrawlerByPhysicalPrimaryKey(String name, int startResult, int maxRows)
			throws DataAccessException;
}
